Everything about Tagged Image File Format totally explained
Tagged Image File Format (abbreviated
TIFF) is a file format for storing
images, including
photographs and
line art. It is now under the control of
Adobe Systems. Originally created by the company
Aldus for use with what was then called "desktop publishing", the TIFF format is widely supported by image-manipulation applications, by publishing and page layout applications, by
scanning,
faxing,
word processing,
optical character recognition and other applications. Adobe Systems, which acquired Aldus, now holds the copyright to the TIFF specification. TIFF hasn't had a major update since 1992, though several Aldus/Adobe technical notes have been published with minor extensions to the format, and several specifications, including
TIFF/EP, have been based on the TIFF 6.0 specification.
History
The phrase "Tagged Image File Format", or, actually, "Tag Image File Format", was used as a subtitle in some earlier versions of the TIFF specification. The current TIFF specification, TIFF 6.0, makes no mention of these phrases; the name is now, simply, "TIFF".
TIFF was originally created as an attempt to get desktop
scanner vendors of the mid-1980s to agree on a common scanned image file format, rather than have each company promulgate its own
proprietary format. In the beginning, TIFF was only a
binary image format (only two possible values for each pixel), since that was all that desktop scanners could handle. As scanners became more powerful, and as desktop computer disk space became more plentiful, TIFF grew to accommodate
grayscale images, then color images. Today, TIFF is a popular format for high-color-depth images, along with
JPEG and
PNG. Adobe Systems, which acquired the
PageMaker publishing program from Aldus, now controls the TIFF specification.
Flexible options
TIFF is a flexible and adaptable file format that handles images and data in a single file via inclusion of file header tags that indicate the basic geometry of the image (size, definition, image data arrangement, and applied
image compression options). For example, a TIFF can be a container file holding compressed JPEG and
RLE (run-length encoding) images. A TIFF can also include a
vector-based
Clipping path (outlines, crops, frames the image). The ability to store image data in a
lossless format makes TIFF files a useful image archive, because, unlike standard JPEG files, a TIFF using lossless compression (or no compression) may be edited and resaved without suffering image compression loss; other TIFF options include layers and pages.
Although it currently is the accepted standard format, when TIFF was introduced, its extensibility provoked compatibility problems. Programmers were free to specify new tags and options, but not all implemented programs supported all created tags. Resultantly, the TIFF soon became the lowest, common denominator, still, today, the majority of TIFFs, and the code that reads them, are based on an uncompressed 32-bit CMYK or a 24-bit RGB image.
The TIFF offers the option of using
LZW compression, a lossless data compression technique for reducing a file's size. Until 2004, this option's use was limited, because the LZW technique was the subject of several patents; however, these patents are expired.
Every TIFF begins with a 2-
byte indicator of
byte order: "II" for
little endian and "MM" for
big endian byte ordering. The next 2 bytes represent the number
42, selected "for its
deep philosophical significance". The reading of 42 depends upon the byte order indicated by the 2-byte indicator. All words, double words, and so on, in the TIFF file are read based upon the indicated byte order. The TIFF 6.0 Specification (Section 7: Additional baseline TIFF Requirements) writes that compliant TIFF readers
must support both byte orders (II and MM), however, TIFF writers may choose the byte order most convenient for their image purposes. The image-processing community's joke about the TIFF's standardised-consistency problems in its early variations was
Thousands of Incompatible File Formats.
The Tiff file format uses 32bit offsets, and as such, each file is limited to 4 gigabytes.
TIFF in document imaging
TIFF format is standard in
document imaging and
document management systems. In this environment it's normally used with
CCITT Group IV 2D compression, which supports
black-and-white (also called bitonal or
monochrome) images. In high-volume environments, documents are typically scanned in
black and
white (rather than color or grayscale) to conserve storage capacity. An average
A4 scan produces 30 kilobytes (KB) of data at 200
ppi (pixels per inch resolution) and 50 KB of data at 300 ppi. 300 ppi is far more common than 200 ppi.
Because TIFF format supports multiple pages, multi-page documents can be saved as single TIFF files rather than as a series of files for each scanned page.
TIFF in scientific imaging
The inclusion of the SampleFormat tag in TIFF 6.0 allows TIFF files to handle advanced pixel data types, including integer images with more than 8 bits per channel and floating point images. This tag made TIFF 6.0 a viable format for scientific image processing where extended precision is required. An example is the use of TIFF to store images acquired using scientific CCD cameras that provide up to 16 bits per pixel of intensity resolution.
Storing a sequence of images in a single TIFF file is also possible, and is allowed under TIFF 6.0, provided the rules for multi-page images are followed.
Private tags
Developers can apply for a block of "private tags" to enable them to include their own proprietary information inside a TIFF file without causing problems for file interchange. TIFF readers are required to ignore tags that they don't recognise, and a developer's private tags are guaranteed not to clash with anyone else's tags or with the standard set of tags defined in the specification.
Exploits
The TIFF
file format is unusual in comparison to other image formats, in that it's composed of small descriptor blocks containing offsets into the file which point to the actual pixel image data (composed of bands of pixel rows). This means that incorrect offset values can cause programs to attempt to read erroneous portions of the file or attempt to read past the physical
end of file. Like most other image file formats, improperly encoded packet or line lengths within the file can cause poorly written rendering programs to
overflow their internal buffers. Properly-written image rendering programs generally avoid such pitfalls.
Multiple
buffer overflows have been found in
libtiff,
(External Link
)(External Link
)(External Link
) some of these have also been used to execute
unsigned code on the
PlayStation Portable,
(External Link
)(External Link
) as well as run third party applications on the iPhone and iPod Touch
(External Link
).
Further Information
Get more info on 'Tagged Image File Format'.
|
External Link Exchanges
Do you know how hard it is to get a link from a large encyclopaedia? Well we're different and will prove it. To get a link from us just add the following HTML to your site on a relevant page:
<a href="http://tagged_image_file_format.totallyexplained.com">Tagged Image File Format Totally Explained</a>
Then simply click through this link from your web page. Our crawlers will verify your link, extract the title of your web page and instantly add a link back to it. If you like you can remove the words Totally Explained and embed the link in article text.
As long as your link remains in place, we'll keep our link to you right here. Please play fair - our crawlers are watching. Your site must be closely related to this one's topic. Any kind of spamming, dubious practises or removing the link will result in your link from us being dropped and, potentially, your whole site being banned. |